package com.twentytwok.hospitalsystem22K.service;

import com.twentytwok.hospitalsystem22K.bo.DoctorBo;
import com.twentytwok.hospitalsystem22K.common.PageVo;
import com.twentytwok.hospitalsystem22K.common.R;
import com.twentytwok.hospitalsystem22K.common.R2;
import com.twentytwok.hospitalsystem22K.pojo.DoctorUser;
import com.twentytwok.hospitalsystem22K.vo.DoctorVo;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

public interface DoctorUserService {

    PageVo<DoctorUser> getPageData(Map<String, Object> params);

    R2 update(DoctorUser doctorUser);

    R2 delete(Integer id);

    R2 add(DoctorUser doctorUser);

    /**
     * 根据指定的部门id和时间段id获取对应的医生列表
     *
     * @author Yuanao
     * @date 2021年11月12日 11:59:55
     *
     * @param departmentId 医生id
     * @param date 预约日期
     * @param timeQuantumId 时间段id
     * @return R
     */
    R getDoctorByDepartmentIdAndTimeQuantumId(Integer departmentId, LocalDate date, Integer timeQuantumId);

    List<DoctorBo> selectDepartmentBo();

    DoctorVo selectDepartmentVo();
}
